package com.yangyang.ralearn.net.serialize;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 自动序列化的类属性前面添加此标记之后会自动序列化
 * 
 * @author yangyang
 * 
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface AutoSerializable {

	/**
	 * 需要序列化成的数组宽度（0表示按照原来的宽度，否则按照设计的宽度序列化）
	 * 
	 * @return
	 */
	public int width() default 0;

	/**
	 * 需要序列化的属性的序列索引，序列化对象的时候按照索引由小到大的顺序
	 * 
	 * @return
	 */
	public int index() default 0;

}
